home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PCMania 30
/
PCMania CD30.iso
/
postumum
/
nnatuscr
/
misc.inc
< prev
next >
Wrap
Text File
|
1994-07-07
|
2KB
|
107 lines
─────────────────────────────────────────────────────────────────────────────
; RUTINAS VARIAS VGA, DETECTAR CPU, TECLADO
─────────────────────────────────────────────────────────────────────────────
Barrido Proc
Mov Dx,3dah
VRT:
In Al,Dx
Test Al,8
Jnz VRT ;Espear hasta que el RV empiece
NoVRT:
In Al,Dx
Test Al,8
Jz NoVRT ;Espear hasta que el RV acabe
Ret
Barrido Endp
PonPaleta MACRO
Mov Dx,03c8h
Out Dx,Al
Inc Dx
Cld
Rep OutSb
ENDM PonPaleta
Detect386 Proc
Pushf
Xor ah,ah
Push Ax
Popf
Pushf
Pop Ax
And Ah,0f0h
Cmp Ah,0f0h
Je No386
Popf
Jmp Si386
No386:
Popf
Mov Dx,OFFSET Not386
Mov Ah,9
Int 21h
Mov Ax,04C00h
Int 21h
Si386:
Ret
Detect386 Endp
Int09 proc
Push Ax
Push Bx
Push Dx
In Al,60h
Test Al,80h
Jz Ok
Xor Al,Al
Ok:
Mov Cs:[Tecla],Al
In AL,61h
Mov AH,AL
Or AL,80h
Out 61h,AL
Mov AL,AH
Out 61h,AL
Mov AL,20h ; Señal de fin de interrupcion
Out 20h,AL
Pop Dx
Pop Bx
Pop Ax
Iret
OldInt09 Dd 0
Tecla Db 0
int09 Endp
PonMi09 Proc
Xor Ax,Ax
Mov Es,Ax
Mov Di,09*4
Mov Bx,Es:[Di]
Mov Si,Es:[Di+2]
Mov Word Ptr Cs:[oldint09],Bx
Mov Word Ptr Cs:[oldint09+2],Si
;pon la nueva interrupción...
Mov Word Ptr Es:[Di],OffSet int09
Mov Word Ptr Es:[Di+2],Seg int09
Ret
PonMi09 Endp
Quita09 Proc
Xor Ax,Ax
Mov Es,Ax
Mov Di,09*4
Mov Si,OFFSET oldint09
Mov Ax,cs:[si]
Mov es:[di],ax
Mov ax,cs:[si+2]
Mov es:[di+2],ax
Ret
Quita09 Endp